﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace JudoTec.forms
{
    public partial class EditarCompeticiones : Form
    {
        public EditarCompeticiones()
        {
            InitializeComponent();
        }

        private void competicionesBindingNavigatorSaveItem_Click(object sender, EventArgs e)
        {
            if(this.Validate()){
                
                this.competicionesBindingSource.EndEdit();
              //^? this.competicionesTableAdapter.Delete(this.competicionesDS.competiciones);
                this.tableAdapterManager.UpdateAll(this.competicionesDS);
                this.competicionesTableAdapter.Fill(this.competicionesDS.competiciones);
                //this.competicionesBindingSource.AddNew();
            }
            else{
                this.tableAdapterManager.UpdateAll(this.competicionesDS);
            }

        }

        private void EditarCompeticiones_Load(object sender, EventArgs e)
        {
            // TODO: esta línea de código carga datos en la tabla 'competicionesDS.competiciones' Puede moverla o quitarla según sea necesario.
            this.competicionesTableAdapter.Fill(this.competicionesDS.competiciones);

        }


        private void CrearCompet_Click(object sender, EventArgs e)
        {
            //para guardar en la base de datos, usamos updateAll
            this.tableAdapterManager.UpdateAll(this.competicionesDS);
            NuevaCompeticion nuevacompeticion = new NuevaCompeticion();
            nuevacompeticion.ShowDialog(this);
            // TODO: esta línea de código carga datos en la tabla 'competicionesDS.competiciones' Puede moverla o quitarla según sea necesario.
            this.competicionesTableAdapter.Fill(this.competicionesDS.competiciones);
        }

        private void button1_Click(object sender, EventArgs e)
        {
            
            if (competicionesDS.HasChanges())
            {
                DialogResult result = MessageBox.Show("¿Desea guardar los cambios antes de salir?",
                                                        "Aviso",
                                                        MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);
                //que guarde los cambios
                if (result == DialogResult.Yes)
                {
                    competicionesBindingNavigatorSaveItem_Click(sender,e);
                    Close();
                }
                else
                {
                    //Que cierre el usuario
                    if (result == DialogResult.No)
                    {
                        Close();
                    }
                }
            }
            else
            {
                Close();
            }
        }

        private void bindingNavigatorDeleteItem_Click(object sender, EventArgs e)
        {
            
            //Miramos si el dataSet ha cambiado
            if (competicionesDataGridView.RowCount >=1)
            {
                // this.competicionesTableAdapter.Update(competicionesDS.competiciones);
                if (competicionesDS.HasChanges())
                {
                    //Creamos el comando de insercion/actualizacion
                    //this.competicionesDS.AcceptChanges();
                    this.competicionesTableAdapter.Update(competicionesDS.competiciones);


                    MessageBox.Show(" Cambios realizados correctamente !");

                }
                else
                {
                    competicionesBindingNavigatorSaveItem_Click(sender, e);
                }


            }
            else
            {
                this.competicionesTableAdapter.Update(competicionesDS.competiciones);
                MessageBox.Show("No hay elementos a borrar");
            }



        }

                                        
    }
}
